Шкурки. Теория - Справка Light Alloy

Как известно, внешний вид Light Alloy определяется шкурками. Шкурки позволяют определить внешний вид таких элементов:

Формат шкурки

Шкурка представляет собой файл с расширением LAS, расположенный в программной папке Light Alloy \ Skins. Фактически, это ZIP-архив с изменённым расширением. Это позволяет избегать вопросов пользователя о том, что делать с выкачанным архивом и куда класть распакованные файлы.

Стоит заметить, что в процессе разработки использовать ZIP-архив, да ещё и переименованный, неудобно. Поэтому Light Alloy способен работать и с другими форматами шкурок:

Архив с расширением .zip - это обычная шкурка, у которой просто сохранили оригинальное расширение архива. Такой вариант шкурки удобен, когда надо оперативно отправить кому-либо шкурку на анализ или оценку.

Распакованная шкурка - это просто папка с содержимым. Шкурка в таком виде отлично подходит для активной разработки, поскольку есть быстрый и прямой доступ ко всем файлам шкурки. Кроме того, помимо файлов в папке можно хранить также исходники и образцы. В меню настроек распакованные шкурки легко узнать: их название берётся в [квадратные скобки].

Состав файла шкурки

Внутри шкурки находятся такие файлы:

Пройдёмся по этим файлам подробнее.

Preview.png

Этот файл предпросмотра. Он служит для представления шкурки в настройках:

Параметры этого файла:

Что изображают в файле предпросмотра? В общем и целом, это остаётся на усмотрение автора, но основные направления этого изображения, обычно, таковы:

  1. Этот рисунок - визитка. Тут должно быть изображение, которое демонстрирует основную идею шкурки.
  2. Как правило, цветовая гамма предпросмотра перекликается с гаммой окна проигрывателя в этой шкурке.
  3. В большинстве случаев в предпросмотре изображается стилизованное название шкурки.
  4. Довольно часто изображается стилизованный логотип проигрывателя.

Обратите внимание: нет смысла изображать предпросмотр шкурки, поскольку двойной щелчок её примеривает на сам проигрыватель. А на нём, как очевидно, "предпросмотреть" шкурку намного удобнее и нагляднее.

SkinInfo.txt

Этот файл работает в паре с предыдущим. Он, в дополнение к Preview.png, представляет шкурку в настройках. Но уже текстовую часть.

Параметры этого файла:

Внутри skinInfo.txt выглядит примерно так:

SkinTitle=Dub SkinAuthor=Dvigok, Gilorn SkinVer=4.7.3 SkinWWW=http://www.light-alloy.ru/forum/skins/dub/ SkinCmt=Official skin SkinAudio=0

Обратите внимание: значение идёт сразу после знака "=". Пробел сразу после "=" недопустим, поскольку он может привести к некорректному отображению информации в проигрывателе. Но уже внутри значения пробелы использовать можно без ограничений.

Параметр Значение
SkinTitle Пишется название шкурки. Рекомендуется не использовать в названии [квадратные скобки], поскольку такими скобками обозначается распакованная шкурка.
SkinAuthor Указывается автор шкурки. Или несколько авторов. Здесь не указываются реставраторы шкурки (не касается расширенных портов и альтернативных версий шкурки; в таких случаях действуйте на своё усмотрение).
SkinVer Указывается версия шкурки. Сейчас используются два метода назначения версий шкурки:
  1. независимый:
    • стандартный подход, как у программ:
    • первая финальная версия - v1.0.0
    • исправление ошибок - v1.0.1
    • мелкое/среднее добавление или изменение - v1.1.0
    • крупное/глобальное изменение - v2.0.0
  2. зависимый:
    • идёт привязка к версиям Light Alloy:
    • первая финальная версия имеет версию, аналогичную той версии Light Alloy, на которой шкурка гарантированно будет работать, например - v4.7.0.1
    • если происходит изменение шкурки без использования дополнительных возможностей - v4.7.0.2
    • если происходит изменение шкурки с использованием дополнительных возможностей - например уточнением бордюра в соответствии с нововведением в Light Alloy 4.7.3 - v4.7.3.1
Только автор шкурки определяет, какой метод больше отвечает его интересам.
SkinWWW Адрес шкурки или адрес автора. В большинстве своём здесь указывают адрес шкурки на форуме Light Alloy, но можно указать свой сайт.
SkinCmt Любая дополнительная информация по шкуре. Помните: в окне настроек под неё отводится только одна строка. Учитывайте это. Кстати здесь можно указать имя (или псевдоним) реставратора шкурки.
SkinAudio Строка, согласно которой шкурка считается обычной (если "0") или аудиошкуркой (если "1"). Соответственно шкурка отображается или в общем перечне или в перечне шкурок аудиорежима.

Interface.xml

Это файл разметки. Он как бы объясняет, откуда именно брать графические элементы и куда именно их писать.

Параметры этого файла:

Interface.xml состоит из трёх частей:

<IMAGE id="Hint" file="main.bmp"> <AREA id="Lclick" pos="0,235" size="22,22"/> <AREA id="Rclick" pos="23,235" size="22,22"/> </IMAGE>

<FONT id="Digits" img="FT.Digits" chars="0123456789: &lt;&gt;_"/>

<CONTROL type="Panel" bg="Ft.PosBG" pos="145,38" size="130,18"> <CONTROL type="Text" pos="3,1" size="69,14" font="Digits" text=" {POS}_&gt;_"/> <CONTROL type="Text" pos="72,1" size="51,14" font="Digits_dur" text="{DUR}"/> </CONTROL>

Блоков каждого из трёх типов может быть несколько. Некоторые из блоков имеют фиксированные названия, некоторые - нет.

Подробности работы с "Interface.xml" описаны в практической части.

Skin.png (.bmp)

Это основной источник изображений для шкурки. Может быть представлен как одним файлом, так и несколькими. Типичный образец:

Файлы изображений - единственные файлы в шкурках, требования к которым вообще отсутствуют (кроме формата файла: BMP или PNG). Однако, чем больше размеры этого файла, тем больше проигрыватель будет потреблять оперативной памяти.

Обратите внимание: в PNG-формате в данном случае прозрачность не поддерживается - она будет сведена в непрозрачный вид с помощью белой подложки.

Ограничения шкурок для Light Alloy

Несмотря на активное развитие проигрывателя, возможности шкурок имеют ограничения, связанные с возрастом движка и нюансами его изначальной разработки. Вот ключевые ограничения: